package cn.kent.nio.byteBuffer;

import java.nio.ByteBuffer;

/**
 * {@link java.nio.ByteBuffer} 的一些方法使用 allocate和allocateDirect 的区别
 * allocate() 方法
 * allocateDirect() 方法的区别
 */
public class TestByteBufferAllocate {
    public static void main(String[] args) {
        System.out.println(ByteBuffer.allocate(16).getClass());
        System.out.println(ByteBuffer.allocateDirect(16).getClass());
        /**
         * class java.nio.HeapByteBuffer 堆内存，受到GC影响，效率较低
         * class java.nio.DirectByteBuffer 直接内存，读写效率高(少一次拷贝)，不会受到GC影响，分配的效率低
         */

    }
}
